From cd0ce0cbe8af8719a6f542098ec78f2a5c1222ce Mon Sep 17 00:00:00 2001 From: dujinkim Date: Mon, 1 Dec 2025 10:28:05 +0000 Subject: (최겸) 구매 입찰 사전견적 개발(rfq-last) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../evcp/(evcp)/(procurement)/rfq-last/page.tsx | 51 +++++++++++++++++++++- 1 file changed, 49 insertions(+), 2 deletions(-) (limited to 'app/[lng]/evcp') diff --git a/app/[lng]/evcp/(evcp)/(procurement)/rfq-last/page.tsx b/app/[lng]/evcp/(evcp)/(procurement)/rfq-last/page.tsx index ab63c14f..6830dbe9 100644 --- a/app/[lng]/evcp/(evcp)/(procurement)/rfq-last/page.tsx +++ b/app/[lng]/evcp/(evcp)/(procurement)/rfq-last/page.tsx @@ -37,14 +37,16 @@ interface RfqPageProps { // 탭별 데이터 카운트를 가져오는 함수 async function getTabCounts() { try { - const [generalData, itbData, rfqData] = await Promise.all([ + const [generalData, preBiddingData, itbData, rfqData] = await Promise.all([ getRfqs({ page: 1, perPage: 1, sort: [], filters: [], joinOperator: "and", search: "", rfqCategory: "general" }), + getRfqs({ page: 1, perPage: 1, sort: [], filters: [], joinOperator: "and", search: "", rfqCategory: "pre_bidding" }), getRfqs({ page: 1, perPage: 1, sort: [], filters: [], joinOperator: "and", search: "", rfqCategory: "itb" }), getRfqs({ page: 1, perPage: 1, sort: [], filters: [], joinOperator: "and", search: "", rfqCategory: "rfq" }), ]); return { general: generalData.total || 0, + pre_bidding: preBiddingData.total || 0, itb: itbData.total || 0, rfq: rfqData?.total || 0, }; @@ -52,6 +54,7 @@ async function getTabCounts() { console.error("Error fetching tab counts:", error); return { general: 0, + pre_bidding: 0, itb: 0, rfq: 0, }; @@ -76,6 +79,7 @@ export default async function RfqPage(props: RfqPageProps) { // 각 탭별로 데이터 프리패칭 // const allData = await getRfqs({ ...search, rfqCategory: "all" }); const generalData = await getRfqs({ ...search, rfqCategory: "general" }); + const preBiddingData = await getRfqs({ ...search, rfqCategory: "pre_bidding" }); const itbData = await getRfqs({ ...search, rfqCategory: "itb" }); const rfqData = await getRfqs({ ...search, rfqCategory: "rfq" }); @@ -94,7 +98,7 @@ export default async function RfqPage(props: RfqPageProps) { {/* 탭 컨테이너 */} - + @@ -123,6 +127,15 @@ export default async function RfqPage(props: RfqPageProps) { )} + + + 사전견적(입찰) + {tabCounts.pre_bidding > 0 && ( + + {tabCounts.pre_bidding} + + )} + @@ -160,6 +173,40 @@ export default async function RfqPage(props: RfqPageProps) { + {/* 사전견적(입찰) 탭 */} + + + } + > + + + + {/* ITB 탭 */}